 
axios.defaults.baseURL = 'http://127.0.0.1:8888';
axios.defaults.withCredentials = true;
axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded';
axios.defaults.transformRequest = function (data) {
	if (!data) return data;
	let result = ``;
	for (let attr in data) {
		if (!data.hasOwnProperty(attr)) break;
		result += `&${attr}=${data[attr]}`;
	}
	return result.substring(1);
};
axios.interceptors.response.use(function onFulfilled(response) {
	// 说明能从服务器正常获取数据（数据不一定是我们想要的  状态码：2|3）
	return response.data;
}, function onRejected(reason) {
	// 不能从服务器这个呢从获取到数据，这类错误我们是统一在响应拦截器中进行处理即可
	if (reason.response) {
		// 收到服务器的反馈（最起码连上服务器了）
		switch (String(reason.response.status)) {
			case '404':
				alert('当前请求地址不存在')
				break;
		}
	} else {
		// 断网了
	}
	return Promise.reject(reason);
});

// 可以独立对axios进行二次封装，充分利用它的请求拦截器做信息的携带和响应拦截器根据服务器返回不同的错误代码做处理。